package com.finapps.stopspend;

import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;

public class ActivityConMenu extends Activity {

	private static String TAG = "ActivityConMenu";

	public Context ctx;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);

		Log.i(TAG,
				" entro en ONCREATE de Activity con menu  ..........................");
		// Contexto
		ctx = getApplicationContext();
		Log.i(TAG,
				" salgo en ONCREATE de Activity con menu  ..........................");
	}

	protected void onResume() {
		super.onResume();
		Log.i(TAG,
				" entro en ONRESUME de Activity con menu  ..........................");
		Log.i(TAG,
				" salgo de ONRESUME de Activity con menu  ..........................");
	}

	protected void onPause() {
		super.onPause();
		Log.i(TAG,
				" paso por ONPAUSE de Activity con menu  ..........................");
	}

	public void onDestroy() {
		super.onDestroy();
		Log.i(TAG,
				" entro en ONDESTROY de Activity con menu  ..........................");
		Log.i(TAG,
				" salgo en ONDESTROY de Activity con menu  ..........................");
	}

	// OPTINOS MENU FOR THE APP
	// ------------------------------------------------------------------------------------------------------------------------------------------

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		MenuInflater inflater = getMenuInflater();
		inflater.inflate(R.menu.menu, menu);
		return true;
	}

	@Override
	public boolean onPrepareOptionsMenu(Menu menu) {
		super.onPrepareOptionsMenu(menu);

		if (getPreferences(ctx, "MENUAMPLADADIES", "1").equals("1"))
			menu.findItem(R.id.menuampladadies1).setChecked(true);
		else if (getPreferences(ctx, "MENUAMPLADADIES", "1").equals("2"))
			menu.findItem(R.id.menuampladadies2).setChecked(true);
		else
			menu.findItem(R.id.menuampladadies3).setChecked(true);

		if (getPreferences(ctx, "MENUAMPLADAEUROS", "1").equals("1"))
			menu.findItem(R.id.menuampladaeuros1).setChecked(true);
		else if (getPreferences(ctx, "MENUAMPLADAEUROS", "1").equals("2"))
			menu.findItem(R.id.menuampladaeuros2).setChecked(true);
		else
			menu.findItem(R.id.menuampladaeuros3).setChecked(true);

		if (getPreferences(ctx, "MENUESTIL", "1").equals("1"))
			menu.findItem(R.id.menuestil1).setChecked(true);
		else if (getPreferences(ctx, "MENUESTIL", "1").equals("2"))
			menu.findItem(R.id.menuestil2).setChecked(true);
		else
			menu.findItem(R.id.menuestil3).setChecked(true);

		if (getPreferences(ctx, "MENULIMIT", "1").equals("1"))
			menu.findItem(R.id.menulimit1).setChecked(true);
		else if (getPreferences(ctx, "MENULIMIT", "1").equals("2"))
			menu.findItem(R.id.menulimit2).setChecked(true);
		else if (getPreferences(ctx, "MENULIMIT", "1").equals("3"))
			menu.findItem(R.id.menulimit3).setChecked(true);
		else if (getPreferences(ctx, "MENULIMIT", "1").equals("4"))
			menu.findItem(R.id.menulimit4).setChecked(true);
		else if (getPreferences(ctx, "MENULIMIT", "1").equals("5"))
			menu.findItem(R.id.menulimit5).setChecked(true);

		return true;
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {

		// Handle item selection
		switch (item.getItemId()) {
		// AMPLADA DIES
		case R.id.menuampladadies1:
			setPreferences(getApplicationContext(), "MENUAMPLADADIES", 1 + "");
			return true;
		case R.id.menuampladadies2:
			setPreferences(getApplicationContext(), "MENUAMPLADADIES", 2 + "");
			return true;
		case R.id.menuampladadies3:
			setPreferences(getApplicationContext(), "MENUAMPLADADIES", 3 + "");
			return true;

			// AMPLADA EUROS
		case R.id.menuampladaeuros1:
			setPreferences(getApplicationContext(), "MENUAMPLADAEUROS", 1 + "");
			return true;
		case R.id.menuampladaeuros2:
			setPreferences(getApplicationContext(), "MENUAMPLADAEUROS", 2 + "");
			return true;
		case R.id.menuampladaeuros3:
			setPreferences(getApplicationContext(), "MENUAMPLADAEUROS", 3 + "");
			return true;

			// AMPLADA ESTIL
		case R.id.menuestil1:
			setPreferences(getApplicationContext(), "MENUESTIL", 1 + "");
			return true;
		case R.id.menuestil2:
			setPreferences(getApplicationContext(), "MENUESTIL", 2 + "");
			return true;
		case R.id.menuestil3:
			setPreferences(getApplicationContext(), "MENUESTIL", 3 + "");
			return true;

			// LIMIT SALDO
		case R.id.menulimit1:
			setPreferences(getApplicationContext(), "MENULIMIT", 1 + "");
			return true;
		case R.id.menulimit2:
			setPreferences(getApplicationContext(), "MENULIMIT", 2 + "");
			return true;
		case R.id.menulimit3:
			setPreferences(getApplicationContext(), "MENULIMIT", 3 + "");
			return true;
		case R.id.menulimit4:
			setPreferences(getApplicationContext(), "MENULIMIT", 4 + "");
			return true;
		case R.id.menulimit5:
			setPreferences(getApplicationContext(), "MENULIMIT", 5 + "");
			return true;

		default:
			return super.onOptionsItemSelected(item);
		}

	}

	public void setPreferences(Context c, String pref, String value) {

		SharedPreferences preferenciasDeActividad;
		preferenciasDeActividad = PreferenceManager
				.getDefaultSharedPreferences(c);
		SharedPreferences.Editor editor = preferenciasDeActividad.edit();
		editor.putString(pref, value);
		editor.commit();
	}

	public String getPreferences(Context c, String pref, String defvalue) {
		SharedPreferences preferenciasDeActividad;
		preferenciasDeActividad = PreferenceManager
				.getDefaultSharedPreferences(c);
		return preferenciasDeActividad.getString(pref, defvalue);
	}

}
